home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr28 / logcopy.zip / SETGRAPH.ASM < prev    next >
Assembly Source File  |  1993-03-26  |  2KB  |  98 lines

  1.         page    55,132
  2. TITLE    SETGRAPH subroutines called by Microsoft Pascal for SETCOPY
  3.  
  4. SETGRAPH    SEGMENT PARA PUBLIC 'CODE'
  5.             ASSUME  CS:SETGRAPH
  6.  
  7.  
  8.     PUBLIC        GOTOXY
  9.     PUBLIC        SCROLL_SCREEN_UP
  10.  
  11. ;---------------------------------------------------------------
  12. ;
  13. ;       GOTOXY  -  Set cursor on screen at passed location
  14. ;
  15. ;       GOTOXY(  row : Integer     - row and column where
  16. ;                col : Integer )   - cursor is to be moved
  17. ;
  18. ;       Returned        :nothing
  19. ;
  20. ;---------------------------------------------------------------
  21. ; Procedure gotoxy(CONST ROW,COL : Integer);
  22. ;---------------------------------------------------------------
  23.  
  24. GOTOXY    PROC FAR
  25.  
  26. ROWPAR  EQU     8               ;row parameter location
  27. COLPAR  EQU     6               ;Col parameter location
  28.         PUSH    BP              ;save caller's BP register
  29.         MOV     BP,SP           ;point BP to parameters passed
  30.     push    ax
  31.     push    bx
  32.     push    dx
  33.     mov    ah,0FH
  34.     int    10h         ;get active page
  35.         MOV     DX,[BP+ROWPAR]  ;move row to DX
  36.         MOV     DH,DL           ;move DL to DH
  37.         MOV     AX,[BP+COLPAR]  ;move column to CX
  38.         MOV     DL,AL           ;move CL to DL
  39.         MOV     AH,02           ;Move cursor functor
  40.         INT     10H             
  41.     pop    dx
  42.     pop    bx
  43.     pop    ax
  44.         MOV     SP,BP
  45.         POP     BP              ;return to caller
  46.         RET     4
  47.  
  48. GOTOXY    ENDP
  49.  
  50. ;-----------------------------------------------------------------------
  51. ; Procedure scroll_screen_up( nlines,ulr,ulc,lrr,lrc,ATTR: Integer);
  52. ;-----------------------------------------------------------------------
  53.  
  54. SCROLL_SCREEN_UP    PROC    FAR
  55.  
  56.     PUSH    BP
  57.         MOV    BP,SP
  58.  
  59.     PUSH    AX
  60.     PUSH    BX
  61.     PUSH    CX
  62.     PUSH    DX
  63.         MOV    AX,[BP+10H]
  64.         MOV    DX,[BP+08H]
  65.     MOV    BX,[BP+0AH]
  66.     MOV    DH,BL
  67.     MOV    CX,[BP+0CH]
  68.     MOV    BX,[BP+0EH]
  69.     MOV    CH,BL
  70.     MOV    BX,[BP+6H]
  71.     MOV    BH,BL
  72.     MOV    BL,0
  73.         MOV    AH,6
  74.         INT    10H
  75.         MOV    AH,0
  76.     POP    DX
  77.     POP    CX
  78.     POP    BX
  79.     POP    AX
  80.  
  81.         POP    BP
  82.         RET    0CH
  83.  
  84.  
  85. ;[BP+10H]   nlines
  86. ;[BP+08H]   llc
  87. ;[BP+0AH]   llr
  88. ;[BP+0CH]   ulc
  89. ;[BP+0EH]   ulr
  90. ;[BP+6H]   attr
  91.  
  92.  
  93. SCROLL_SCREEN_UP    ENDP
  94.  
  95. SETGRAPH    ENDS
  96.         END
  97.  
  98.